Provision of alternative communications paths in a communications network

ABSTRACT

A method of processing data for computing alternative paths in an optical network ( 10, 40 ) including making a list of groups ( 12, 14, 16, 18, 20, 22, 24, 26 ) that comprise links wherein the links in a group share a risk of being affected by the same fault, comparing each group ( 12, 14, 16, 18, 20, 22, 24, 26 ) with other groups ( 12, 14, 16, 18, 20, 22, 24, 26 ) in the list to determine whether each group includes the same links as another group, and deleting the groups ( 16, 26, 20, 22 ) that comprise links which are a subset of the links in another group.

The invention relates to the provision of alternative communicationspaths (e.g. optical paths) in a communications network, and inparticular to a method of processing data for computing alternativepaths in an optical communications network, and to a method ofdetermining an alternative path, and to a way of creating an entry inmemory containing instructions for an alternative path.

In a circuit-oriented network, or more generally a connection-orientednetwork, it is known to provide protection to a main optical path forsignals by allocating one or more alternative optical paths. Datatravelling on the main optical path can be switched to the alternativeoptical path(s) if the main optical path is affected by a fault. Variousprotection or restoration schemes are known which require thecalculation and allocation of protection paths prior to the occurrenceof a fault.

In a real life communications network there may be many hundreds ofnodes and many tens of thousands of paths between them that may requireprotection. It is known to provide protection to a main path by theprovision of an alternative path known as a so-called disjointed path.In this known technique each path requiring protection is associatedwith a so-called disjointed path which is defined as a path that usesdifferent sets of resources (e.g. nodes and optic fibres) to the pathrequiring protection (so that it can be used as an alternative path). Ashared resource is defined as the smallest item of equipment that can beaffected by a single fault at the same time on two different paths. Whena disjointed path has been correctly determined the main path and thedisjointed path cannot be affected by the same fault. The disjointedpaths need to be calculated and allocated prior to the occurrence of afault so that they can be used in the event of a fault. Typically acomputer using a known algorithm calculates the disjointed paths for anetwork. The known algorithm is used once at a defined service provisiontime when the network is brought into service. It may also be used whenstructural changes are made to the network. In the context of algorithmsfor path computation, a network to be protected is represented as agraph of vertices (nodes, switches, routers or network elements) andbranches (links connecting the nodes, switches, routers or networkelements). The vertices and branches are generally considered as theresources to be protected when deciding whether two paths are disjointedor not.

In a real life communications network the optic fibres are typicallycarried in bundles which may run in the same duct underground, at leastfor part of their length. Two different fibres in the duct may connectentirely different nodes of the network but nonetheless may run in thesame duct. Wavelength Division Multiplexing (WDM) technology is anotherexample of where resources are shared whereby many paths between nodesrun in the same optic fibre and hence share the same resource.

It is also known to improve the above method of computing alternativepaths. The Internet Engineering Task Force (IETF) has provided aclassification for a set of resources that can be affected by the samefault at the same time. This is known as a Shared Risk Link Group(SRLG). The same concept is known as a Shared Risk Group (SRG) by theInternational Telecommunications Union (ITU). A SRLG is defined as theset of links or optical lines that share a common physical resource(including a fibre link/sub-segment/segment/trunk) i.e. sharing a commonrisk. For instance, a set of links L belongs to the same SRLG, denotedS, if the links L are established over the same fibre link F.

Information about SRLGs can be typically extracted from administrativefiles compiled by an operator of the network. Such administrative filesusually also include data relating to all of the ducts of the networkand the links carried by them. Compiling a list of SRLGs is usefulbecause it allows the calculation of alternative paths using knownalternative path calculation algorithms. A problem with using raw SRLGdata is that it can be computationally expensive because it is based onset mathematical operations that may require many hundreds of thousandsof calculations for a typical network. This can mean that computingalternative paths using a computer processor can be slow, or slower thanis desirable. Alternatively, this process may need to be performed onexpensive powerful computers—tying them up/using their resources.

We have noticed that a problem with the SRLG data is that much of it canbe largely redundant. Since the calculation of alternative paths usingSRLG information can be computationally expensive a way of improving theefficiency of the process would be advantageous. We have appreciatedthat it can be desirable to reduce the SRLG data that is processed byremoving redundant data. Determining the SRLG data that is redundant maybe a difficult task, particularly in the case of a large network, andany reduction of the amount of data must not remove useful data.

We have realised that what is required is a way of processing SRLG datafor a network to reduce the amount of data to be used in the computationof alternative paths whilst minimising the loss of useful data.

According to a first aspect of the invention there is provided acomputer-implemented method of processing data for computing alternativepaths in an optical communications network including;

-   -   making a list of groups that comprise links wherein the links in        a group share a risk of being affected by the same fault,    -   comparing each group of the list of groups with other groups in        the list to determine whether each group includes the same links        as another group, and    -   deleting the groups that comprise links which are a subset of        links wholly contained in the links in another group.

Such a method provides a way of processing data before it is input toknown routing algorithms to identify alternative paths. A routingalgorithm to identify alternative paths can more efficiently use thesmaller volume remaining data. A reduction in the number of groups isuseful for improving the efficiency of computing alternative paths andmay reduce the computing time, or the cost of computing time, bysignificantly reducing the number of individual calculations that arerequired to be performed. Furthermore the method minimises redundantdata whilst minimising the deletion of useful data. It will beappreciated that due to the reduced amount of data that is produced themethod can be used more often, for example every time that a new serviceis added to the network.

Preferably the method further includes using the remaining groups tocalculate alternative paths for links in the network.

Preferably the groups are Shared Risk Link Groups (SRLGs) or Shared RiskGroups (SRGs).

According to a second aspect of the invention there is provided analgorithm which causes a computer to perform the following actions on alist of Shared Risk Link Groups, SRLGs, or Shared Risk Groups, SRGs,each SRLG or SRG comprising links which share a risk of being affectedby the same fault:

make a list of unexamined SRLGs or SRGs including therein all the SRLGsor SRGs requiring to be analysed,

-   -   for each unexamined SRLG x or SRG x        -   compare the unexamined SRLG x or SRG x with each of the            other unexamined SRLG y or SRG y, and    -   if SRLG y or SRG y is a subset of SRLG x or SRG x, delete SRLG y        or SRG y and continue to compare SRLG x or SRG x with the other        SRLG y or SRG y until all of the SRLG y or SRG y have been        compared with the SRLG x or SRG x, and    -   if SRLG x or SRG x is a subset of SRLG y or SRG y, delete SRLG x        or SRG x and        if SRLG x or SRG x has not been deleted, as being a subset of        SRLG y or SRG y, mark it as examined and assign it to a reduced        list.

According to another aspect the invention comprises a method of reducingthe computer processing power required for a computer processor todetermine an alternative path from a list of Shared Risk Link Groups,SRLGs, or Shared Risk Groups, SRGs, comprising reducing the list ofSRLGs or SRGs to a reduced list in which no SRLG or SRG of the reducedlist is a wholly included subset of another SRLG or SRG by deletingthose SRLGs or SRGs in the list that are wholly within another SRLG orSRG in the list, and operating an alternative path determining algorithmon the reduced list.

According to another aspect the invention comprises using a computerprocessor to create an alternative communication path from a list of alist of Shared Risk Link Groups, SRLGs, or Shared Risk Groups, SRGs,comprising reducing the list of SRLGs or SRGs by deleting from the listthose SRLGs or SRGs which are wholly contained in another SRLG or SRG ofthe list or at least one SRLG or SRG which is wholly contained inanother SRLG or SRG of the list, and operating an alternative pathdetermining algorithm on the reduced list, and storing the alternativecommunication path determining details in computer memory.

According to a further aspect the invention comprises a communicationsnetwork having a route controlling server for defining pathways fortelecommunications signals from a first location (A) in the network to asecond location (B) in the network, and having access to a first memorycontaining routing instructions for telecommunications travelling fromthe first location (A) to the second location (B), and an alternativerouting server adapted to produce alternative pathways from the firstlocation to the second location and to store alternative pathway data ina second memory, wherein the alternative routing server producesalternative pathway data using the algorithm of the second aspect of theinvention, and wherein the route controlling server is adapted torespond to an indication that there is a fault in the pathway specifiedin the first memory from the first location (A) to the second location(B) by causing the telecommunication from (A) to (B) to be routed usingthe alternative routing pathway data in the second memory.

The first and second memories may comprise the same memory. The routecontrolling server and the alternative routing server may comprise thesame server.

Whilst it will normally be the case that we compare each group of linkswith every other group of links in a list of groups of links, we do notwant to provide a way around this patent by making it essential to doso. We could omit the comparison of a group of links with one or moreother groups of links, provided that the group of links is compared withmany other groups of links so as to reduce significantly the overallnumber of groups of links in the list, thereby significantly reducingthe calculators required to determine the alternative routing path.

Similarly, when it has been determined that a particular first group oflinks is a wholly contained subset of another group of links we willnormally delete the first group of links from the list of groups oflinks. However, this is not required. It may still significantly reducethe number of calculations required to determine an alternative routingpath to deleting many of the redundant groups, or most (over half) ofthe redundant groups, or to delete some, or even one, of the redundantgroups from the list of groups.

The invention may comprise comparing just one group of links withanother second group of links, determining that the one group is awholly contained subset of the second group, and deleting the said onegroup. Repeating this process can further reduce the number of groupsthat are input into an alternative route determining algorithm and willachieve greater returns/savings in processing time and processing powerrequired.

The claims should be read so as to include the above.

Other features of the invention will be apparent from the followingdescription of preferred embodiments shown by way of example only in theaccompanying drawings, in which;

FIG. 1 is a schematic diagram of a basic network to which the inventioncan be applied;

FIG. 2 is a schematic diagram of a more complex network to which theinvention can be applied; and

FIG. 3 is a schematic diagram of a communications network implementingthe alternative route computing strategy.

With reference to FIG. 1 there is shown a schematic diagram of a basicnetwork, generally designated 10, to which the invention can be applied.The network 10 includes four nodes A, B, C, D and four links AB, BC, CD,BD as summarised in Table 1.

TABLE 1 Links between nodes. From to Link A B AB C B BC C D CD D B BD

In FIG. 1 four ducts are represented at four ellipses 12, 14, 16, 18.The ducts are underground pipes or passageways that have different linkspassing through them. It can be seen that where links travel in the sameduct they may be affected by the same fault. For example if the ductrepresented by the ellipse 12 was cut, for example by accident due toroad works, the links AB, BC and CD would be lost.

Using the concept of Shared Risk Link Groups (SRLGs) the ellipses 12,14, 16, 18 represent groups of links which may be susceptible to thesame fault in the network 10. For clarity reference is made to SRLGs,however, it will be appreciated that the disclosure equally applies toShared Risk Groups (SRGs). The corresponding four SRLGs also designatedby the numbers 12, 14, 16, 18 are summarised in the Table 2. The SRLGs12, 14, 16, 18 comprise a data set.

TABLE 2 Links in each SRLG SRLG Links in the group 12 AB, BC, CD 14 AB,BC, BD 16 BC, CD 18 BD, CD

It can be seen from Table 2 that the SRLG 16 is a subset of the SRLG 12so that the SRLG 16 is completely contained within the SRLG 12. We haveappreciated that the SRLG 16 can be deleted from the data set withoutreducing the efficiency in the calculation and allocation. Doing thismakes it possible to make a reduction in the number of SRLGs to beconsidered in the subsequent computation of alternative protectionpaths.

In this way the SRLG concept according to the invention is used within aknown routing algorithm to avoid the calculation of two routings thatare intended to be disjointed, but pass through the same SRLG. Thismeans that if some link associated with a general SRLG x is part of apath, no other link of the same SRLG can be part of the disjointed path.Generalising this concept it can be observed that if SRLG y includes allthe links of SRLG x, then all of the resources which are to be avoidedare specified in SRLG y and hence SRLG x is redundant.

To perform the method according to the invention in a general case, onefirstly produces a list of all of the SRLGs to be analysed. Then eachSRLG is compared with all of the other SRLGs in the list to verifywhether it is a subset of another SRLG. If any subsets are found theseare deleted from the list. The remaining SRLGs in the list represent allof the data to be used in computing alternative disconnected paths.

The steps of the method can be realized with an algorithm which performsthe following steps:

make a list of unexamined SRLGs including therein all the SRLGsrequiring to be analysed

-   -   {for each SRLG x unexamined:        -   {compare it with each of the other unexamined SRLG y if SRLG            y is a subset of SRLG x, delete SRLG y and continue the            internal loop, otherwise if SRLG x is a subset of SRLG y,            delete SRLG x and exit from the internal loop}            if SRLG x has not been deleted, mark it as examined and            assign it to a reduced list}

An algorithm which performs these steps continues the external loop aslong as the list of unexamined SRLGs is not empty. The use of analgorithm as outlined above allows for optimisation of the SRLGreduction operations to produce a reduced list of SRLGs. The reducedlist can be used in computing any disjointed alternative paths in aknown manner.

If the method of the invention is applied to the network 10 in FIG. 1,the list of unexamined SRLGs is initialized with the data of table 2. Itis seen that SRLG 12 includes SRLG 16 and therefore SRLG 16 can bedeleted. One continues the procedure systematically until no other SRLGscan be deleted. In the network 10 of FIG. 1, the SRLGs to be consideredin computation of the alternative paths are thus reduced from four tothree.

Whilst the above example of how the invention is performed shows asimplified network 10 having four nodes and four links, a real lifenetwork may have many thousands of nodes and links. It will beappreciated that reducing the number of SRLGs may significantly reducethe number of individual computation steps involved in allocating andassigning protection paths to a network. An example of the benefitsinvolved in the deletion of SRLGs in a more complex network is nowprovided in FIG. 2.

In FIG. 2 a more complex network 40 is shown to which the presentinvention can be applied. Like features to the network of FIG. 1 areshown with like reference numerals. In FIG. 2 three additional nodes E,F and G are shown which are connected with links as shown in Table 3 sothat there are a total of 7 nodes and 10 links.

TABLE 3 Links between nodes. From to Link A B AB A E AE B C BC B D BD BG BG B F BF C E CE C D CD D G DG D F DF

In FIG. 2 four additional ducts are represented at four additionalellipses 20, 22, 24, 26 so that each duct has different links passingthrough it. In total there are eight ducts in the network 40. Using theconcept of SRLGs the ellipses 12, 14, 16, 18, 20, 22, 24, 26 representcorresponding SRLGs also designated by the numbers 12, 14, 16, 18, 20,22, 24, 26 having links as summarised in the Table 4.

TABLE 4 Links in each SRLG SRLG Links in the group 12 CE, AE, AB, BC,CD, DG, BG 14 AB, BC, BD, BG, BF 16 CE, BC, CD 18 DG, CD, BD, DF 20 CE,AE 22 DG, BG 24 BF, DF 26 CE, AE, AB, BC, CD,

It can be seen from Table 4 that the SRLG 16 is a subset of the SRLG 26so that the SRLG 16 is completely contained within the SRLG 26. The SRLG16 can therefore be deleted. The SRLG 26 is wholly contained within theSRLG 12 so that the SRLG 26 can be deleted. The SRLG 22 is whollycontained within SRLG 12 so that the SRLG 22 can be deleted. The SRLG 20is wholly contained within the SRLG 12 so that the SRLG 20 can bedeleted. Using the method of the invention the number of SRLGs can bereduced from eight to four.

It will be appreciated that the larger the number of nodes and links ina given network the larger the reduction of SRLGs will potentially be.It will also be appreciated that the above description of embodimentsapplying the innovative principles of this invention are given by way ofnon-limiting examples.

When the above technique has been used to reduce a list of SRLG groupsto a list in which no SRLG group is fully contained as a subsumed subsetof another SRLG group in the list, we would run a known alternativecommunication path algorithm on the reduced list of SRLG groups togenerate one or more alternative paths (data identifying or specifyingalternative communication paths to be used in the event of a failure ofa part of the main path). Those alternative path instructions are storedin computer memory and accessed and used to control the communicationpath in the event of a failure of a component in the main path. Theknown alternative path algorithm is an automatic way of providingalternative paths which are implemented by a centralised or distributedcontrol plane. It will be appreciated that providing alternative pathscould be implemented manually from a management system of the network.In both cases, the calculation of the connections to support theservices is performed from a database of the network topology whichincludes information about the nodes and links of the network. Such adatabase may be a single centralised database or may be a distributeddatabase which is replicated on all nodes in the network.

A communications network implementing the alternative route computingstrategy desired above is shown in FIG. 3. The network 50 comprisesnumerous nodes and links, represented schematically by cloud 30. It willbe appreciated that there are many alternative routes through thenetwork for telecommunications traffic travelling from a first point inthe network A, to a second point in the network 50, B.

Which route a communications signal takes is defined by routecontrolling server 32. Route controlling server 32 has access to amemory 34 which contains route data 36. Route data comprises a look-uptable of pre-specified routes, made up of sets of links, betweenspecified points.

In case of a fault on one of the links in a standard route 38 betweenlocations A and B, the fact that there is a fault in one of the links isconveyed to the server 32 via input 35. The route controlling serverthen, responsive to the knowledge that this is a fault, refers toalternative route data 42 saved in memory 34, to choose an alternativeroute 44 through the network 50, avoiding the fault.

Alternative route data 42 is calculated by an alternative routing server46, and stored in the memory 34 by the alternative routing server 46.Alternative routing server 46 uses the algorithm and method describedabove to reduce the size of calculation needed to produce alternativeroute data 42.

It will be appreciated that route controlling server 32 and thealternative routing server 46 need not be separate, but could be thesame server. The “normal” routing data 36 and the alternative routingdata 42 could be stored in different memories instead of the samephysical memory as shown in FIG. 3.

Memory 34 can be any suitable memory, and for example might be remotefrom the server, might be a removable storage device, or might be partof the server hardware itself, or might be a further option.

It will be appreciated that in an alternative embodiment there may be noerror signal 35 provided specifically to the routing server 32. Forexample, the routing server may automatically use the alternative routepathway if it has not had an acknowledgement of a successful “handshake”with a downstream communications device after a predetermined time—itmay timeout to the alternative route pathway. Other ways of knowing thatthe alternative route should be used may exist.

More than one alternative pathway may be determined, and stored inmemory. The routing server may use second, third, etc, alternativepathways if the first (or earlier) alternative does not work. We cancontemplate calculating a plurality of alternative pathways because ourroute-determining process operates on significantly fewerlinks/significantly fewer groups of links in comparison to not applyingthe process of the invention to the list of groups to remove some ofthem.

1. A computer-implemented method of processing data for computingalternative paths in an optical communications network, the methodcomprising: generating a list of groups that comprise communicationlinks in an optical communications network, wherein the links in a givengroup share a risk of being affected by a fault; comparing one or moregroups in the list with other groups in the list to determine whether agroup include the same communication links as another group; anddeleting a group from the list if the communication links in the groupare a subset of the communication links in another group.
 2. Thecomputer-implemented method of claim 1 further comprising calculatingalternative paths for the communication links in the opticalcommunications network using the remaining, non-deleted groups in thelist.
 3. The computer-implemented method of claim 1 wherein the groupsare comprised of one of a Shared Risk Link Group (SRLG) and a SharedRisk Group (SRG).
 4. A non-transitory computer readable medium for acomputer associated with an optical communications network having aplurality of nodes, the nodes being connected via communication linksgrouped into a list of one of Shared Risk Link Groups (SRLGs) and SharedRisk Groups (SRGs), wherein the SRLGs or SRGs include communicationlinks that share a risk of being affected by the same fault, thecomputer readable medium having instructions stored thereon, theinstructions configured to cause the computer to: generate a list ofunexamined SRLGs or SRGs that includes all SRLGs or SRGs to be analysed;for each unexamined SRLG_(x) or SRG_(x) in the list: compare theunexamined SRLG_(x) or SRG_(x) with one or more other unexaminedSRLG_(y) or SRG_(y) in the given list; if the communication links in agiven SRLG_(y) or SRG_(y) are a subset of the communication links in theSRLGs_(x) or SRGs_(x): delete the SRLG_(y) or SRG_(y); and continuecomparing the unexamined SRLG_(x) or SRG_(x) with one or more otherSRLG_(y) or SRG_(y); if the communication links in SRLG_(x) or SRG_(x)are a subset of the communication links in another SRLG_(y) or SRG_(y),delete the SRLG_(x) or SRG_(x); and if the SRLG_(x) or SRG_(x) has notbeen deleted as being a subset of SRLG_(y) or SRG_(y), mark thenon-deleted SRLG_(x) or SRG_(x) as having been examined and assign it toa reduced list.
 5. The non-transitory computer readable medium of claim4 wherein continuing to compare the unexamined SRLG_(x) or SRG_(x) withone or more other SRLG_(y) or SRG_(y)comprises continuing to compare theunexamined SRLG_(x) or SRG_(x) with other SRLG_(y) or SRG_(y)until allSRLG_(y) or SRG_(y) in the list have been compared.
 6. Acomputer-implemented method of reducing the computer processing powerrequired for a computer processor to determine an alternative path froma list of Shared Risk Link Groups (SRLGs) or Shared Risk Groups (SRGs)comprising communication links that share a risk of being affected bythe same fault, the method comprising: generating a reduced list bydeleting one or more SRLGs or SRGs in the list that are subsets of atleast one other SRLG or SRG in the list; and executing an alternativepath determination process on the reduced list to determine analternative path.
 7. A non-transitory computer-readable medium havinginstructions stored thereon configured to cause a computer executing theinstructions to reduce the computer processing power required for acomputer processor to determine an alternative path from a list ofShared Risk Link Groups (SRLGs) or Shared Risk Groups (SRGs) comprisingcommunication links that share a risk of being affected by the samefault, the computer-readable medium having instructions stored thereonconfigured to cause a computer executing the instructions to: generate areduced list by deleting one or more SRLGs or SRGs in the list that aresubsets of at least one other SRLG or SRG in the list; and execute analternative path determination process on the reduced list to determinean alternative path.
 8. A communications network comprising: a routecontrolling server configured to define communication paths fortelecommunications signals between a first location in the network and asecond location in the network, and having access to a first memorycontaining routing instructions for routing communications from thefirst location to the second location; and an alternative routing serverconfigured to produce alternative communication paths from the firstlocation to the second location, and to store alternative path data inthe first memory, wherein the alternative routing server producesalternative path data by: generating a list of groups that comprisecommunication links between nodes in the communications network, whereinthe links in a given group share a risk of being affected by the samefault; comparing one or more groups in the list with other groups in thelist; deleting a group from the list if the communication links in thegroup are a subset of the communication links in another group, tocreate a reduced list; and defining an alternate communication paths fortelecommunications signals between the first location and the secondlocation using the reduced list; and wherein the route controllingserver is further configured to respond to an indication of a fault inthe defined communication path by causing telecommunications signals tobe routed from the first location to the second location using thealternate communication path.